const express = require('express')
const app = express()

const server = require('http').createServer(app)
server.listen(3000)

//socket服务器监听连接  表示已经建立连接
const io = require('socket.io')(server)
io.on('connection', socket => {
  //向客户端发送一个事件 消息
  // socket.emit('request', )

  //向所有客户端发送消息
  // io.emit('request', )

  //用户登陆时候监听登陆消息
  socket.on('login', data => {
    socket.username = data
  })

  //监听客户端 发来的 事件消息
  socket.on('send', data => {
    //向所有客户端发送
    io.emit('msg', { username: socket.username, msg: data })
  })
})

//静态文件中间件
app.use(express.static(__dirname + '/static'))

app.get('*', (req, res) => {
  //发送文件  参数是文件路径
  res.sendFile(__dirname + '/view/1.html')
})